package com.bwsoft.util;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

import org.apache.pdfbox.pdfparser.PDFParser;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.util.PDFTextStripper;

public class PDFUtil {

	public static String[] readPDF(String fileName) {
		File file = new File(fileName);
		FileInputStream in = null;
		String[] strs = null;
		try {
			in = new FileInputStream(fileName);
			// 新建一个PDF解析器对象
			PDFParser parser = new PDFParser(in);
			// 对PDF文件进行解析
			parser.parse();
			// 获取解析后得到的PDF文档对象
			PDDocument pdfdocument = parser.getPDDocument();
			// 新建一个PDF文本剥离器
			PDFTextStripper stripper = new PDFTextStripper();
			// 从PDF文档对象中剥离文本
			String result = stripper.getText(pdfdocument);
			System.out.println("PDF文件的文本内容如下：");
			System.out.println(result);
			strs=result.split("\r\n");
		} catch (Exception e) {
			System.out.println("读取PDF文件" + file.getAbsolutePath() + "生失败！" + e);
			e.printStackTrace();
		} finally {
			if (in != null) {
				try {
					in.close();
				} catch (IOException e1) {
				}
			}
		}
		return strs;
	}
	
	public static String[] readPDF(File file) {
		FileInputStream in = null;
		String[] strs = null;
		try {
			in = new FileInputStream(file);
			// 新建一个PDF解析器对象
			PDFParser parser = new PDFParser(in);
			// 对PDF文件进行解析
			parser.parse();
			// 获取解析后得到的PDF文档对象
			PDDocument pdfdocument = parser.getPDDocument();
			// 新建一个PDF文本剥离器
			PDFTextStripper stripper = new PDFTextStripper();
			// 从PDF文档对象中剥离文本
			String result = stripper.getText(pdfdocument);
			System.out.println("PDF文件的文本内容如下：");
			System.out.println(result);
			strs=result.split("\r\n");
		} catch (Exception e) {
			System.out.println("读取PDF文件" + file.getAbsolutePath() + "生失败！" + e);
			e.printStackTrace();
		} finally {
			if (in != null) {
				try {
					in.close();
				} catch (IOException e1) {
				}
			}
		}
		return strs;
	}

}
